Method and system for predicting future activities of user on social media platforms

ABSTRACT

The disclosed embodiments illustrate a method and a system for predicting future activities of a user on a social media platform. The method includes extracting a first time series of one or more historical activities performed by the user from a social media platform server. The method further includes receiving a second time series of one or more future events from a requestor-computing device. The method further includes determining a first set of forecast values and a second set of forecast values based on the first time series and/or the second time series, wherein the first set of forecast values is determined using an ARIMA technique, and the second set of forecast values is determined using a regression modelling technique. The method further includes predicting the future activities of the user based on the first set of forecast values and the second set of forecast values.

TECHNICAL FIELD

The presently disclosed embodiments are related, in general, to datamining. More particularly, the presently disclosed embodiments arerelated to a method and a system for predicting future activities of auser on social media platforms.

BACKGROUND

With proliferation of electronic devices, such as laptops, smartphones,tablets, and/or the like, along with ever-increasing advancements andpopularity of social media platforms such as FACEBOOK, LINKEDIN,TWITTER™, and/or the like, human generated messages have grown at aspeedy rate. Further, the social media platforms may have alleviated theusers to post and/or share the messages that may be representative oftheir respective characteristics such as likes, dislikes, needs,thoughts, and sentiments. Such messages may be of significance to abusiness organization. For example, the business organization maydetermine preferences of the users towards products and services, andaccordingly, the business organization may recommend the products andservices. In another example, the business organization may alter theirrespective business strategy to target such users.

However, such characteristics of the users may not be static in naturemay change with time. The characteristics of the users may deviate orchange based on future events, such as festivals, sports, politics,and/or the like. In such scenarios, predicting future activities of theusers may be a non-trivial task.

Further limitations and disadvantages of conventional and traditionalapproaches will become apparent to one of skill in the art, throughcomparison of described systems with some aspects of the presentdisclosure, as set forth in the remainder of the present application andwith reference to the drawings.

SUMMARY

According to embodiments illustrated herein, there is provided a methodfor predicting one or more future activities of a user on a social mediaplatform. The method includes extracting, by one or more processors, afirst time series of one or more historical activities performed by theuser on the social media platform from a social media platform server.The method further includes receiving, by the one or more processors, asecond time series of one or more future events from a computing device.The method further includes determining, by the one or more processors,a first set of forecast values pertaining to the one or more futureactivities based on the first time series, wherein the first set offorecast values is determined using a first forecasting technique. Thefirst forecasting technique corresponds to an auto regressive integratedmoving average (ARIMA) technique. The method further includesdetermining, by the one or more processors, a second set of forecastvalues pertaining to the one or more future activities based on thefirst time series and the second time series, wherein the second set offorecast values is determined using a second forecasting technique. Thesecond forecasting technique corresponds to a regression modellingtechnique. The method further includes predicting, by the one or moreprocessors, the one or more future activities of the user based on thefirst set of forecast values and the second set of forecast values. Theone or more future activities may comprise one or more of a frequency ofvisit of the user to the social media platform during a secondpredefined time duration, a count of messages to be posted, shared, orfollowed by the user during the second predefined time duration, and alike or a dislike of the user towards a product or a service during thesecond predefined time duration.

According to embodiments illustrated herein, there is provided a systemfor predicting one or more future activities of a user on a social mediaplatform. The system includes one or more processors configured toextract a first time series of one or more historical activitiesperformed by the user on the social media platform from a social mediaplatform server. The one or more processors are further configured toreceive a second time series of one or more future events from acomputing device. The one or more processors are further configured todetermine a first set of forecast values pertaining to the one or morefuture activities based on the first time series, wherein the first setof forecast values is determined using a first forecasting technique.The first forecasting technique corresponds to an auto regressiveintegrated moving average (ARIMA) technique. The one or more processorsare further configured to determine a second set of forecast valuespertaining to the one or more future activities based on the first timeseries and the second time series, wherein the second set of forecastvalues is determined using a second forecasting technique. The secondforecasting technique corresponds to a regression modelling technique.The one or more processors are further configured to predict the one ormore future activities of the user based on the first set of forecastvalues and the second set of forecast values. The one or more futureactivities may comprise one or more of a frequency of visit of the userto the social media platform during a second predefined time duration, acount of messages to be posted, shared, or followed by the user duringthe second predefined time duration, and a like or a dislike of the usertowards a product or a service during the second predefined timeduration.

According to embodiments illustrated herein, there is provided acomputer program product for use with a computing device. The computerprogram product comprises a non-transitory computer readable mediumstoring a computer program code for predicting one or more futureactivities of a user on a social media platform. The computer programcode is executable by one or more processors in the computing device toextract a first time series of one or more historical activitiesperformed by the user on the social media platform from a social mediaplatform server. The computer program code is further executable by theone or more processors to receive a second time series of one or morefuture events from a computing device. The computer program code isfurther executable by the one or more processors to determine a firstset of forecast values pertaining to the one or more future activitiesbased on the first time series, wherein the first set of forecast valuesis determined using a first forecasting technique. The first forecastingtechnique corresponds to an auto regressive integrated moving average(ARIMA) technique. The computer program code is further executable bythe one or more processors to determine a second set of forecast valuespertaining to the one or more future activities based on the first timeseries and the second time series, wherein the second set of forecastvalues is determined using a second forecasting technique. The secondforecasting technique corresponds to a regression modelling technique.The computer program code is further executable by the one or moreprocessors to predict the one or more future activities of the userbased on the first set of forecast values and the second set of forecastvalues. The one or more future activities may comprise one or more of afrequency of visit of the user to the social media platform during asecond predefined time duration, a count of messages to be posted,shared, or followed by the user during the second predefined timeduration, and a like or a dislike of the user towards a product or aservice during the second predefined time duration.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings illustrate the various embodiments of systems,methods, and other aspects of the disclosure. Any person with ordinaryskills in the art will appreciate that the illustrated elementboundaries (e.g., boxes, groups of boxes, or other shapes) in thefigures represent one example of the boundaries. In some examples, oneelement may be designed as multiple elements, or multiple elements maybe designed as one element. In some examples, an element shown as aninternal component of one element may be implemented as an externalcomponent in another, and vice versa. Furthermore, the elements may notbe drawn to scale.

Various embodiments will hereinafter be described in accordance with theappended drawings, which are provided to illustrate the scope and not tolimit it in any manner, wherein like designations denote similarelements, and in which:

FIG. 1 is a block diagram of a system environment, in which variousembodiments can be implemented;

FIG. 2 is a block diagram that illustrates a system for predicting oneor more future activities of a user on a social media platform, inaccordance with at least one embodiment;

FIG. 3 is a flowchart that illustrates a method for predicting one ormore future activities of a user on a social media platform, inaccordance with at least one embodiment; and

FIG. 4 is a flow diagram for predicting one or more future activities ofa user on a social media platform, in accordance with at least oneembodiment.

DETAILED DESCRIPTION

The present disclosure is best understood with reference to the detailedfigures and description set forth herein. Various embodiments arediscussed below with reference to the figures. However, those skilled inthe art will readily appreciate that the detailed descriptions givenherein with respect to the figures are simply for explanatory purposesas the methods and systems may extend beyond the described embodiments.For example, the teachings presented and the needs of a particularapplication may yield multiple alternative and suitable approaches toimplement the functionality of any detail described herein. Therefore,any approach may extend beyond the particular implementation choices inthe following embodiments described and shown.

References to “one embodiment,” “at least one embodiment,” “anembodiment,” “one example,” “an example,” “for example,” and so on,indicate that the embodiment(s) or example(s) may include a particularfeature, structure, characteristic, property, element, or limitation,but that not every embodiment or example necessarily includes thatparticular feature, structure, characteristic, property, element, orlimitation. Furthermore, repeated use of the phrase “in an embodiment”does not necessarily refer to the same embodiment.

Definitions: The following terms shall have, for the purposes of thisapplication, the meanings set forth below.

A “computing device” refers to a device that includes one or moreprocessors/microcontrollers and/or any other electronic components, adevice, or a system that performs one or more operations according toone or more programming instructions/codes. Examples of the computingdevice may include, but are not limited to, a desktop computer, alaptop, a PDA, a mobile device, a smartphone, a tablet computer (e.g.,iPad® and Samsung Galaxy Tab®), and/or the like.

A “user” refers to an individual who may be registered on one or moresocial media platforms. The user may interact with one or more otherusers on the one or more social media platforms who are known to orotherwise acquainted with him/her, by performing one or more activities.For example, a user may share a message with one or more other users. Inan embodiment, the one or more activities may include, but are notlimited to, posting, liking, or disliking a message, sharing a messagewith the one or more other users, and/or the like.

A “message” refers to a written or recorded communication that may havebeen shared or posted by a user on a social medial platform. In anembodiment, the message may correspond to one or more of, but are notlimited to, a text message, an image, an audio, a video, and/or thelike.

A “social media platform” refers to a communication platform throughwhich a user may interact with one or more other users who are known toor otherwise acquainted with the user. Further, apart from interactingwith one another, the user and the one or more other users may performone or more activities on the social media platform. In an embodiment,the one or more activities may include, but are not limited to,following the one or more other users, posting/sharing a message, andliking or disliking messages posted/shared by the other users. Examplesof the social media platforms may include, but are not limited to,social networking websites (e.g., FACEBOOK, TWITTER™, LINKEDIN,GOOGLE+™, and so forth), web-blogs, web-forums, community portals,online communities, or online interest groups. Hereinafter, the term“social media platform” may be interchangeably referred as “socialnetwork platform”, “social media websites”, or “social networkingplatform”.

“Social media data” refers to a historical data of a user, who isassociated with a social media website, such as FACEBOOK. The socialmedia data may include at least a log of one or more activitiesperformed by the user on the social media platform. For example, thesocial media data may include a log of one or more messages posted,shared, liked, or disliked by the user on the social media website and atime stamp associated with each of the one or more messages. The socialmedia data may further include one or more attributes of the user. Forexample, the one or more attributes of the user may include, but are notlimited to, name, age, geographic location, likes, dislikes, hobbies,and so on.

“Future activities” refers to a set of activities or actions that may beperformed by a user in future. For example, the future activities mayinclude, but are not limited to, a frequency of visit to a social mediaplatform during a future time duration by the user, a count of messagesthat may be posted, shared, or followed by the user during the futuretime duration, a like or a dislike of the user towards a product or aservice during the future time duration, and/or the like.

A “requestor” refers to an individual, an advertiser, a sales person, oran entity such as an organization, a business group, or a franchise. Inan embodiment, the requestor may be interested in forecasting oridentifying future activities of a user on a social media platform.Further, in an embodiment, after identifying the one or more needs ofthe user, the requestor may suggest or propose or recommend one or moreproducts or services to the user based on the predicted futureactivities of the user.

A “time series” refers to a temporal sequence of one or more activitiesperformed by a user during a predefined time duration. In an embodiment,the time series may further comprise a count of the one or moreactivities performed by the user. For example, a user posted “10”messages in January, “12” messages in February, “7” messages in March,“18” messages in April, “14” messages in May, and “3” messages in June.In such a case, the time series for a count of messages posted by theuser during January-June may be given as:

-   -   time series=[10, 12, 7, 18, 14, 3]

In an embodiment, the time series may correspond to a univariate timeseries or a multivariate time series. In an embodiment, the multivariatetime series may include observations of a p-dimensional variable. Forexample, ‘n’ realizations of p-dimensional variable may constitute amultivariate time series. For example, a multivariate time series mayinclude a count of one more activities of one or more users.

A “future event” refers to an event that may influence, inspire, orenhance one or more activities of a user on a social media platform. Theone or more future events may comprise one or more periodic eventsand/or one or more non-periodic events. For example, the one or moreperiodic events may include one or more festivals, one or more sportevents, one or more exam sessions, and/or the like. The one or morenon-periodic events may include one or more musical events, one or morenatural catastrophes, and/or the like. In an embodiment, the futureevent, such as a political event, may correspond to either a periodicevent or a non-periodic event.

An “auto regressive moving average (ARMA) model” refers to a model thatmay perform a statistical analysis over a time series data to predictone or more future values of the time series. For example, given a timeseries data X_(t), the ARMA model may be utilized to predict one or morefuture values in this series. The ARMA model consists of two portionsi.e., an autoregressive portion and a moving average portion.Mathematically, the ARMA model may be written as:

$X_{t} = {c + {ɛ_{t}{\sum\limits_{i = 1}^{p}{\phi_{i}X_{t - i}}}} + {\sum\limits_{i = 1}^{q}{\theta_{i}ɛ_{t - i}}}}$

where,

-   -   p: corresponds to an order of the autoregressive portion;    -   q: corresponds to an order of the moving average portion;    -   φ_(r), . . . , φ_(p): correspond to parameters of the        autoregressive model;    -   θ₁, . . . , θ_(q): correspond to parameters of the moving        average model;    -   c: correspond to a constant; and    -   ε_(t): correspond to a white noise.

In an embodiment, the parameters (φ₁, . . . , φ_(p) and θ₁, . . . ,θ_(q)) may be obtained or learned based on past time series data duringmodel fitting.

An “auto regressive integrated moving average (ARIMA) model” is ageneralization of an ARMA model. The ARIMA model is fitted to a timeseries data either to better understand the data or predict one or morefuture values of the time series. In an embodiment, the ARIMA model isutilized to forecast the time series data that takes into accounttrends, seasonality, cycles, errors, and non-stationary aspect of thedata set. The ARIMA model does not provide any means to model any datathat is representative of any external influence.

“Probability” shall be broadly construed, to include any calculation ofprobability; approximation of probability, using any type of input data,regardless of precision or lack of precision; any number, eithercalculated or predetermined, that simulates a probability; or any methodstep having an effect of using or finding some data having some relationto a probability.

A “probability distribution” refers to an assignment of probability toeach measureable subset of possible outcomes of a random variable. In anembodiment, the probability distribution may correspond to adistribution of the random variable whose integral over any interval isthe probability that the variate specified by it will lie within thatinterval.

A “classifier” refers to a mathematical model that categorizes data inone or more categories. In an embodiment, the classifier may beconfigured to predict one or more future activities of a user on asocial media platform. In an embodiment, the classifier may be trainedbased at least the social media data to predict the future activities ofthe user. Examples of the classifier may include, but are not limitedto, a Support Vector Machine (SVM), a Logistic Regression, a BayesianClassifier, a Decision Tree Classifier, a Copula-based Classifier, aK-Nearest Neighbors (KNN) Classifier, or a Random Forest (RF)Classifier.

FIG. 1 is a block diagram of a system environment 100 in which variousembodiments may be implemented. The system environment 100 includes arequestor-computing device 102, a user-computing device 104, a socialmedia platform server 106, a database server 108, an application server110, and a network 112. Various devices in the system environment 100may be interconnected over the network 112. FIG. 1 shows, forsimplicity, one requestor-computing device 102, two user-computingdevices, such as a first user-computing device 104A and a seconduser-computing device 104B, one social media platform server 106, onedatabase server 108, and one application server 110. However, it will beapparent to a person having ordinary skill in the art that the disclosedembodiments may also be implemented using multiple requestor-computingdevices, multiple user-computing devices, multiple social media platformservers, multiple database servers, and multiple application serverswithout departing from the scope of the disclosure.

The requestor-computing device 102 refers to a computing device used bya requestor. The requestor may correspond to an individual, a salesperson, or an artificial entity such as an organization or a franchisewho may be interested to identify one or more future activities of auser on a social media platform. The one or more future activities maycorrespond to one or more actions/activities (e.g., sharing, posting,liking, disliking, etc.) that may be performed by the user on the socialmedia platform.

In an embodiment, the requestor-computing device 102 may comprise one ormore processors in communication with one or more memories. Therequestor-computing device 102 may be operable to execute one or moresets of instructions stored in the one or more memories. In anembodiment, the requestor-computing device 102 may be communicativelycoupled to the network 112. In an embodiment, the requestor-computingdevice 102 may comprise a display screen that may be configured todisplay one or more user interfaces to the requestor.

In an embodiment, the requestor may utilize the requestor-computingdevice 102 to transmit or receive information, pertaining to anidentification of the one or more future activities of the user, to/fromthe database server 108 and/or the application server 110 over thenetwork 112. For example, a requestor may input, using therequestor-computing device 102, a first numerical value representing anumber of users, for whom the one or more future activities may berequired to be predicted. In an embodiment, the requestor may input oneor more historical activities of the user (or users) that may berequired to be considered during the identification of the one or morefuture activities of the user (or the users). For example, based on theone or more historical activities performed by the user, the applicationserver 110 may extract a first time series from the social mediaplatform server 106. In an embodiment, the requestor may input one ormore future events along with associated timestamps. Based on the one ormore future events, the application server 110 may determine a secondtime series. In another embodiment, the requestor may input the secondtime series of the one or more future events.

Further, in an embodiment, the requestor may be presented with a userinterface on the display screen of the requestor-computing device 102displaying the predicted one or more future activities of the user.After identifying the one or more future activities of the user, therequestor may utilize the requestor-computing device 102 to communicatewith the user over the network 112. Further, the requestor may recommendone or more products or services associated with the one or more futureactivities of the user.

The requestor-computing device 102 may correspond to various types ofcomputing devices such as, but are not limited to, a desktop computer, alaptop, a PDA, a mobile device, a smartphone, a tablet computer (e.g.,iPad® and Samsung Galaxy Tab®), and/or the like.

The user-computing device 104 refers to a computing device utilized bythe user. The user may correspond to an individual who may be registeredon one or more social media platforms. In an embodiment, theuser-computing device 104 may comprise one or more processors incommunication with one or more memories. The user-computing device 104may be operable to execute one or more sets of instructions stored inthe one or more memories. In an embodiment, the user-computing device104 may be communicatively coupled to the network 112. In an embodiment,the user-computing device 104 may comprise a display screen that may beconfigured to display one or more user interfaces to the user.

In an embodiment, the user may utilize the user-computing device 104 toconnect with the social media platform server 106, via the network 112.After connecting with the social media platforms (e.g., FACEBOOK,TWITTER™, and/or the like), the user may perform one or more activitieson the social media platforms. For example, the one or more activitiesmay include, but are not limited to, posting one or more messages. Theone or more activities further include sharing, liking, or disliking oneor more messages posted by one or more other users, and/or the like. Theone or more messages may correspond to one or more text messages, one ormore images, one or more tags, one or more videos, and/or the like.

Further, in an embodiment, the user may be presented with a userinterface on the display screen of the user-computing device 104displaying one or more recommendations for products or services.Further, the user may utilize the user-computing device 104 to provideone or more responses corresponding to the one or more recommendations.

The user-computing device 104 may correspond to various types ofcomputing devices such as, but are not limited to, a desktop computer, alaptop, a PDA, a mobile device, a smartphone, a tablet computer (e.g.,iPad® and Samsung Galaxy Tab®), and/or the like.

The social media platform server 106 may be configured to host one ormore social network platforms such as, but are not limited to, one ormore social media websites (e.g., FACEBOOK, TWITTER™, LINKEDIN,GOOGLE+™, and so forth), a chat/messaging application, a web-blog,web-forums, a community portal, an online community, or an onlineinterest group. In an embodiment, the user may be registered on the oneor more social network platforms. The social media platform server 106may refer to a communication medium through which the user may interactwith the one or more other users, who are also registered on the one ormore social network platforms. Further, apart from interacting with oneanother, the user and the one or more other users may post the one ormore messages on the social network platforms. Further, in anembodiment, the user may share/tag the one or more messages with the oneor more other users on the social network platforms. Further, the usermay interact with the one or more other users in reference to the one ormore messages. In an embodiment, the one or more messages shared orposted by the user may be indicative of, but are not limited to, the oneor more needs, likes, or dislikes of the user.

In an embodiment, the social media platform server 106 may be realizedthrough various web-based technologies such as, but are not limited to,a Java web-framework, a .NET framework, a PHP framework, or any otherweb-application framework.

The database server 108 may refer to a computing device that may storesocial media data of each of the users, who are registered on the socialmedia platforms such as FACEBOOK, LINKEDIN, TWITTER™, and/or the like,in accordance with at least one embodiment. The social media datapertaining to a user may comprise one or more of, but are not limitedto, one or more attributes of a user profile associated with the userand the one or more historical activities performed by the user on thesocial media platforms. The one or more attributes pertaining to theuser profile of the user may comprise at least one or more of, but arenot limited to, a name, an occupational details, a biographicalkeywords, likes/dislikes, hobbies, and personal descriptions of theuser. In an embodiment, the database server 108 may be configured toextract the social media data of each of the users from the social mediaplatform server 106. The extraction of the social media data may bebased on a first predefined time duration. For example, a requestor mayspecify to extract social media data of x users for a first predefinedtime period, such as last six months.

In an embodiment, the database server 108 may be communicatively coupledto the network 112. In an embodiment, the database server 108 may beconfigured to transmit or receive one or moreinstructions/information/social media data to/from one or more devices,such as the requestor-computing device 102, the social media platformserver 106, and/or the application server 110 over the network 112. Inan embodiment, the database server 108 may receive a query from therequestor-computing device 102 or the application server 110 to retrievethe social media data pertaining to each of the users. For querying thedatabase server 108, one or more querying languages may be utilized suchas, but not limited to, SQL, QUEL, DMX and so forth. Further, thedatabase server 108 may be realized through various technologies suchas, but not limited to, Microsoft® SQL server, Oracle, and My SQL.

A person having ordinary skill in the art will understand that the scopeof the disclosure is not limited to the social media platform server 106or the database server 108 as a separate entity. In an embodiment, thefunctionalities of the social media platform server 106 may beintegrated into the database server 108, or vice-versa without departingfrom the spirit of the disclosure.

The application server 110 refers to a computing device that may includeone or more processors and one or more memories. The one or morememories may include computer readable codes that may be executable bythe one or more processors to perform one or more operations. Forexample, the one or more operations may include, but are not limited to,extracting the first time series of the one or more historicalactivities performed by the user from the social media platform server106 and receiving the second time series from the requestor-computingdevice 102. The one or more operations may further include determining afirst set of forecast values and a second set of forecast values usingone or more forecasting techniques and further, predicting the one ormore future activities of the user based on the first set of forecastvalues and the second set of forecast values.

Prior to performing the one or more operations, the application server110 may receive the input from the requestor-computing device 102. Forexample, the application server 110 may receive the first numericalvalue. The first numerical value may represent the number of users forwhom the application server 110 may have to predict the one or morefuture activities. In an embodiment, the application server 110 mayfurther receive the one or more historical activities that may berequired to be considered during the prediction of the one or morefuture activities of each user. Thereafter, the application server 110may connect to the database server 108, over the network 112, to extractthe social media data of the users, using one or more protocols such as,but not limited to, Open Database Connectivity (ODBC) protocol and JavaDatabase Connectivity (JDBC) protocol. In an alternate embodiment, theapplication server 110 may directly extract the social media data fromthe social media platform server 106.

The application server 110 may be realized through various types ofapplication servers such as, but not limited to, Java applicationserver, .NET framework application server, and Base4 application server.

A person having ordinary skill in the art will understand that the scopeof the disclosure is not limited to the database server 108 or theapplication server 110 as a separate entity. In an embodiment, thefunctionalities of the database server 108 may be integrated into theapplication server 110 without departing from the spirit of thedisclosure.

Further, a person skilled in the art will appreciate that the scope ofthe disclosure should not be limited to the requestor-computing device102 and the application server 110 as separate entities. In anembodiment, the application server 110 may be realized as an applicationhosted on or running on the requestor-computing device 102 withoutdeparting from the spirit of the disclosure.

The network 112 may include a medium through which devices, such as therequestor-computing device 102 and the user-computing device 104 and oneor more servers, such as the social media platform server 106, thedatabase server 108, and the application server 110 may communicate witheach other. Examples of the network 112 may include, but are not limitedto, the Internet, a cloud network, a Wireless Fidelity (Wi-Fi) network,a Wireless Local Area Network (WLAN), a Local Area Network (LAN), aplain old telephone service (POTS), and/or a Metropolitan Area Network(MAN). Various devices in the system environment 100 may be configuredto connect to the network 112, in accordance with various wired andwireless communication protocols. Examples of such wired and wirelesscommunication protocols may include, but are not limited to,Transmission Control Protocol and Internet Protocol (TCP/IP), UserDatagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), FileTransfer Protocol (FTP), ZigBee, EDGE, infrared (IR), IEEE 802.11,802.16, cellular communication protocols, such as Long Term Evolution(LTE), and/or Bluetooth (BT) communication protocols.

FIG. 2 is a block diagram that illustrates a system for predicting theone or more future activities of the user, in accordance with at leastone embodiment. For the purpose of ongoing description, the system isconsidered as the application server 110. However, the scope of thedisclosure should not be limited to the system as the application server110. The system may also be realized as the requestor-computing device102, without departing from the spirit of the disclosure.

The application server 110 may include one or more processors, such as aprocessor 202, one or more memories, such as a memory 204, one or moretransceivers, such as a transceiver 206, one or more comparators, suchas a comparator 208, one or more predictive units, such as a predictiveunit 210, and one or more input/output units, such as a input/output(I/O) unit 212. The transceiver 206 may be coupled with the I/O unit212. The I/O unit 212 may be connected to the network 112 through theinput terminal 214 and the output terminal 216.

The processor 202 may comprise suitable logic, circuitry, interfaces,and/or codes that may be configured to execute one or more sets ofinstructions stored in the memory 204. The processor 202 may be coupledto the memory 204, the transceiver 206, the comparator 208, and thepredictive unit 210. The processor 202 may further include an arithmeticlogic unit (ALU) and a control unit. The ALU may be coupled to thecontrol unit. The ALU may be configured to perform one or moremathematical and logical operations and the control unit may be operableto control the operation of the ALU. The processor 202 may execute theone or more sets of instructions, programs, codes, and/or scripts storedin the memory 204 to perform the one or more operations. The processor202 may be implemented based on a number of processor technologies knownin the art. Examples of the processor 202 include, but are not limitedto, an X86-based processor, a Reduced Instruction Set Computing (RISC)processor, an Application-Specific Integrated Circuit (ASIC) processor,and/or a Complex Instruction Set Computing (CISC) processor, amicroprocessor, a microcontroller, and/or the like.

The memory 204 may comprise suitable logic, circuitry, and/or interfacesthat may be operable to store one or more machine codes, and/or computerprograms having at least one code section executable by the processor202 and/or the predictive unit 210. The memory 204 may further beconfigured to store the one or more sets of instructions, codes, and/orscripts. In an embodiment, the memory 204 may include one or morebuffers (not shown). The one or more buffers may be configured to storeat least one or more of, but are not limited to, the one or moreattributes of the users (associated with the social media platform) andthe information pertaining to the one or more historical activitiesperformed by the users on the social media platform. The one or morehistorical activities may correspond to one or more actions/activities(e.g., sharing, posting, tagging, liking, or disliking a message) thatmay had been performed by the users in the past. Some of the commonlyknown memory implementations include, but are not limited to, a randomaccess memory (RAM), a read only memory (ROM), a hard disk drive (HDD),and a secure digital (SD) card. In an embodiment, the memory 204 mayinclude the one or more machine codes, and/or computer programs that areexecutable by the processor 202 to perform the one or more operations.It will be apparent to a person having ordinary skill in the art thatthe one or more sets of instructions, programs, codes, and/or scriptsstored in the memory 204 may enable the hardware of the system 200 toperform the one or more operations.

The transceiver 206 may comprise suitable logic, circuitry, and/orinterfaces that may be operable to communicate with the one or moredevices, such as the requestor-computing device 102 and theuser-computing device 104 and/or one or more servers, such as the socialmedia platform server 106 or the database server 108 over the network112. The transceiver 206 may be operable to transmit or receive theinstructions, queries, social media data, or other information to/fromvarious components of the system environment 100. In an embodiment, thetransceiver 206 may be coupled to the I/O unit 212 through which thetransceiver 206 may receive or transmit the instructions, queries,social media data, and/or other information corresponding to theprediction of the one or more future activities of the user. In anembodiment, the transceiver 206 may receive and/or transmit various datain accordance with various communication protocols such as, TCP/IP, UDP,and 2G, 3G, or 4G communication protocols through the input terminal 214and/or the output terminal 216, via the I/O unit 212.

The comparator 208 may comprise suitable logic, circuitry, and/orinterfaces that may be configured to compare at least two input signalsto generate an output signal. In an embodiment, the output signal maycorrespond to either “1” or “0.” In an embodiment, the comparator 208may generate an output “1” if a value of a first signal (from the atleast two signals) is greater than a value of a second signal (from theat least two signals). Similarly, the comparator 208 may generate anoutput “0” if the value of the first signal is less than the value ofthe second signal. In an embodiment, the comparator 208 may be realizedthrough either software technologies or hardware technologies known inthe art. Though, the comparator 208 is depicted as independent from theprocessor 202 in FIG. 2, a person skilled in the art will appreciatethat the comparator 208 may be implemented within the processor 202without departing from the scope of the disclosure.

The predictive unit 210 may comprise suitable logic, circuitry,interfaces, and/or code that may be configured to execute one or moresets of instructions, codes, and programs stored in the memory 204. Thepredictive unit 210 may be realized by one or more statistical modelsand one or more learning algorithms, which may enable the prediction ofthe one or more future activities of the user. In an embodiment, thepredictive unit 210 may employ one or more techniques such as, but arenot limited to, one or more statistical techniques, one or more naturallanguage processing techniques, one or more neural network techniques,and/or one or more machine learning techniques known in the art topredict the one or more future activities. The one or more machinelearning techniques may be realized using one or more of, but are notlimited to, Naïve Bayes classification, artificial neural networks,Support Vector Machines (SVM), multinomial logistic regression, orGaussian Mixture Model (GMM) with Maximum Likelihood Estimation (MLE).

The I/O unit 212 may comprise suitable logic, circuitry, interfaces,and/or code that may be configured to transmit or receive the one ormore messages and other information to/from the one or more devices,such as the requestor-computing device 102 and the user-computing device104 and/or the one or more servers, such as the social media platformserver 106 or the database server 108 over the network 112. The I/O unit212 may also provide an output to the user. The I/O unit 212 maycomprise various input and output devices that may be configured tocommunicate with the transceiver 206. The I/O unit 212 is connected withthe network 112 through the input terminal 214 and the output terminal216. In an embodiment, the input terminal 214 and the output terminal216 may be realized through, but are not limited to, an antenna, anEthernet port, an USB port or any other port that can be configured toreceive and transmit data. Examples of the I/O unit 212 may include, butare not limited to, a keyboard, a mouse, a joystick, a touch screen, atouch pad, a microphone, a camera, a motion sensor, and/or a lightsensor.

An embodiment of the operation of the system for predicting the one ormore future activities of the user has been explained further inconjunction with FIG. 3.

FIG. 3 is a flowchart illustrating a method for predicting one or morefuture activities of a user, in accordance with at least one embodiment.The flowchart 300 has been described in conjunction with elements ofFIG. 1 and FIG. 2.

At step 302, one or more inputs are received from the requestor. In anembodiment, the transceiver 206 may be configured to receive the one ormore inputs from the requestor-computing device 102. The one or moreinputs may have been provided by the requestor of therequestor-computing device 102. In an embodiment, a first input, fromthe one or more inputs, may be indicative of the first numerical value.The first numerical value may be representative of the number of users,for whom the predictive unit 210 may be required to predict the one ormore future activities. For example, a requestor may specify to predictfuture activities of “10” users. In an alternate embodiment, the firstnumerical value may be representative of a minimum threshold and/or amaximum threshold associated with the number of users for whom the oneor more future activities are to be predicted. For example, therequestor may specify to predict the future activities of at least “10”users. In another example, the requestor may specify to predict thefuture activities of at most “10” users. In yet another example, therequestor may specify to predict the future activities of “10±2” users,i.e., at least “8” users and at most “12” users. In an embodiment, asecond input, from the one or more inputs, may be representative of theone or more historical activities of the user that may be required to beextracted to predict the one or more future activities. For example, therequestor may specify a historical activity as a count of tweetsgenerated by a user. In such a scenario, the predictive unit 210 maypredict a future activity of the user based on the count of tweets. Inan embodiment, a third input, from the one or more inputs, may berepresentative of the one or more future activities that may be requiredto be predicted. For example, the requestor may specify to predict aninterest of the user to buy cars in next month.

A person having ordinary skill in the art will understand that the scopeof the disclosure is not limited to the second input and the third inputas separate inputs. In an embodiment, the processor 202 may beconfigured to inherit the information associated with the third inputbased on the second input, or vice-versa. For example, the requestorspecifies to analyze a count of tweets from a user in the last sixmonths. In such a case, the requestor may be interested in knowing anexpected count of tweets that will be generated by the user in thefuture (e.g., next one month). In another illustrative example, therequestor specifies to predict an interest of the user for buying carsin next month. In such a case, the processor 202 may extract the one ormore historical activities, related to vehicles and specifically cars,performed by the user on the social media platform.

A person having ordinary skill in the art will appreciate thatpreferences, influences, needs, and all other characteristics of theuser may vary with time. For example, needs of a user two years back maynot be same as the current needs of the user. Therefore, it may not besignificant to analyze the one or more historical activities of the useron the social media platform that are insignificant to the current needsof the user. For example, a set of messages that were posted and likedby a user “2 years” ago may not be of significance today. In order toavoid such irrelevant and ambiguous messages, the requestor may providea fourth input. In an embodiment, the fourth input, from the one or moreinputs, may be representative of a first predefined time duration and asecond predefined time duration. The first predefined time duration maycorrespond to a time duration during which the user may have performedthe one or more historical activities. For example, the requestor mayspecify to analyze the count of tweets made by a user during last “6months”. The second predefined time duration may correspond to a timeduration during which the one or more future activities of the user isrequired to be predicted. For example, the requestor may specify topredict the expected count of tweets that will be made by the user innext “3 months”.

A person having ordinary skill in the art will further appreciate thatthe preferences, influences, needs, and all other characteristics of theuser may vary based on the one or more future events. For example, apolitical event or a musical event may influence the user that mayresult into an increase or decrease in the activities of the user on thesocial media platforms during the second predefined time duration. Inorder to include the significance of the one or more future events onthe one or more future activities of the user, the requestor may providea fifth input representing the one or more future events. Further, eachof the one or more future events may be associated with a degree ofsignificance. The degree of significance of a future event may beindicative of a level of impact that the future event may create on theuser. In one embodiment, the requestor may provide the degree ofsignificance of each of the one or more future events. In anotherembodiment, the processor 202 may determine the degree of significancebased on at least a historical data extracted from the social mediaplatform server 106. For example, “X” number of users are registered ona social media platform, such as FACEBOOK. Out of “X” number of users,“Y” number of users (“Y” is less than “X”) have perform at least oneactivity, from one or more historical activities (e.g., post, share,like, dislike, and so on), during a festival such as Christmas inDecember 2014. The processor 202 may determine the degree ofsignificance of the festival, i.e., the Christmas, by performing one ormore operations (e.g., algebraic operations, statistical operations,logical operations, and/or the like) on the “X” and the After receivingthe one or more inputs from the requestor-computing device 102, theprocessor 202 may store the one or more inputs in the memory 204. Basedon the one or more inputs, the processor 202 may extract the socialmedia data of the user (or the one or more users based on the firstnumerical value) from the social media platform server 106 or thedatabase server 108. The processor 202 may store the extracted socialmedia data of the user in the memory 204.

At step 304, the first time series of the one or more historicalactivities performed by the user on the social media platforms may beextracted. In an embodiment, the processor 202 may be configured toextract the first time series of the one or more historical activitiesperformed by the user on the social media platforms. In an embodiment,the processor 202 may extract the first time series from the socialmedia platform server 106. In an embodiment, the social media platformserver 106 maintains a record of the one or more historical activitiesperformed by the user on the social media platforms. In an embodiment,based on the one or more inputs provided by the requestor (as discussedin step 302), the processor 202 may transmit a query to the social mediaplatform server 106 to obtain the first time series. Based on the query,the social media platform server 106 may generate the first time series.The first time series corresponds to a time series (univariate ormultivariate) that represents a sequence of observations during thefirst predefined time duration. Each of the observations may correspondto a measurement (e.g., a count) of the one or more historicalactivities performed by the user during the first predefined timeduration. In an embodiment, a mean and a variance of the measurement ofthe one or more historical activities are constant during the firstpredefined time duration. The first predefined time duration may includeone or more first time durations. For example, a requestor wishes todetermine an expected count of messages that will be tweeted by a firstuser in an upcoming month (e.g., August). Further, the requestorspecifies to consider one or more messages that had been tweeted by theuser during the last six months (i.e., February, March, April, May,June, and July). In such a case, the social media platform server 106may generate the first time series based on a count of messages thatwere tweeted by the first user in each month of the last six months. Forexample, the first user posted “25” messages in February, “17” messagesin March, “18” messages in April, “29” messages in May, “9” messages inJune, and “11” messages in July. In such a case, the first time seriesmay be given as:

-   -   first time series=[25, 17, 18, 29, 9, 11]

A person having ordinary skills in the art will appreciate that thescope of the disclosure is not limited to the first time seriesincluding numerical data pertaining to the one or more historicalactivities performed by the user, such as the count of tweets. In anembodiment, the first time series may further include categorical datapertaining to the one or more historical activities performed by theuser. For example, the first user posted messages related to sports andmusic in January, movies in February, and politics, festivals, andsports in March. In such a case, the first time series may be given as:

-   -   first time series=[(sports, music), (movies), (politics,        festivals, sports)]

In an embodiment, the processor 202 may apply a state of art topicidentification technique, such as latent dirichlet allocation (LDA) toidentify the topics (e.g., news, politics, sports, music, exam, and soon) of the one or more messages. Thereafter, the processor 202 maygenerate the first time series based on the one or more topics of theone or more messages published by the user. In another embodiment, thefirst time series may include observations (e.g., a count) pertaining toone or more topics (e.g., sports, music, politics, etc.) associated withthe one or more messages distributed over the first predefined timeduration. The first predefined time duration may include the one or morefirst time durations. For example, a first predefined time durationcorresponds to “3 months” and the one or more first time durations inthe first predefined time duration include “a first month”, “a secondmonth”, and “a third month”.

In another embodiment, the processor 202 may extract the first timeseries from the database server 108 or the memory 204. In anotherembodiment, the processor 202 may extract the social media data of theuser from the social media platform server 106. The social media datamay include the one or more attributes of the user and a log of the oneor more historical activities performed by the user on the social mediaplatforms during the first predefined time duration. Based on theextracted social media data, the processor 202 may generate the firsttime series.

At step 306, the second time series of the one or more future events isreceived. In an embodiment, the transceiver 206 may be configured toreceive the second time series from the requestor-computing device 102.In another embodiment, the processor 202 may extract the second timeseries from the database server 108 or the memory 204. In an embodiment,the second time series corresponds to a temporal series (univariate ormultivariate) of one or more future events during the second predefinedtime duration. In an embodiment, the processor 202 may determine amultivariate distribution over the topics associated with the one ormore messages. In an embodiment, the multivariate distribution over thetopics corresponds to the one or more future events. In an embodiment,following equation corresponds to the second time series:

-   -   E=[M₁, M₂, M₃, . . . , M_(e), . . . , M_(n)]        where,

M_(i): refers to a multivariate distribution of one or more messagesassociated with each of the n events over k topics for a future event i,such that M_(i)=(p_(1,i), p_(2,i), . . . , p_(k,i)) and p_(1,i)+p_(2,i)+. . . +p_(k,i)=1, where p_(k,i) corresponds to a probabilitydistribution of the one or more messages over k topics.

At step 308, the first set of forecast values pertaining to the one ormore future activities of the user is determined. In an embodiment, thepredictive unit 210 may be configured to determine the first set offorecast values pertaining to the one or more future activities. In anembodiment, the predictive unit 210 may determine the first set offorecast values based on the first time series. The predictive unit 210may utilize the first forecasting technique to determine the first setof forecast values based on the first time series. The first forecastingtechnique may correspond to an auto regressive integrated moving average(ARIMA) technique. In an embodiment, the first set of forecast valuescorresponds to one or more future values of the first time series. TheARIMA technique may be realized by use of at least the followingequations:

Y _(t)=(1−L)^(d) X _(t)  (1)

(1−Σ_(i=1) ^(p) L ^(t))Y _(t)=(1+Σ_(i=1) ^(q) L ^(i))ε_(t)  (2)

where,

-   -   L: corresponds to a Lag operator and LX_(t)=X_(t-1);    -   d: corresponds to a degree of differencing;    -   p: corresponds to an order of the autoregressive (AR) part;    -   q: corresponds to an order of the moving average (MA) part;    -   φ₁, . . . , φ_(p): correspond to parameters of the AR model; and    -   θ₁, . . . , θ_(q): correspond to parameters of the MA model.

At step 310, the second set of forecast values pertaining to the one ormore future activities is determined. In an embodiment, the predictiveunit 210 may be configured to determine the second set of forecastvalues pertaining to the one or more future activities. In anembodiment, the predictive unit 210 may determine the second set offorecast values based on the first time series and the second timeseries. The predictive unit 210 may utilize a second forecastingtechnique to determine the second set of forecast values based on thefirst time series and the second time series. The second forecastingtechnique corresponds to a regression modelling technique. Theregression technique may be realized by use of the following equation:

X _(t,i)=β_(0,i)+β_(1,i) P _(1,i) +e _(i)  (3)

wherein,

-   -   X_(t,i): Predicted time series value;    -   β_(0,i),β_(1,i): Parameters learnt from the past time series        data;    -   P_(1,i): Probability of the message corresponding to a topic;        and    -   e₁: Noise.        The regressors are learned from one or more historical        activities performed by the user in the past and thereafter,        predicts one or more second future values.

The one or more second future values may correspond to the second set offorecast values. In an embodiment, the predictive unit 210 may include amodel based on the regression modelling technique to determine thesecond set of forecast values. In an embodiment, an ARIMA error maycorrespond to a mean absolute percentage error (MAPE) that is given byfollowing equation:

$\begin{matrix}{{MAPE} = {\frac{1}{n}{\sum\limits_{t = 1}^{n}\; \frac{{X_{t} - F_{t}}}{X_{t}}}}} & (4)\end{matrix}$

where,

-   -   X_(t): corresponds to a first time series value;    -   n: corresponds to a count of data in the first time series; and    -   F_(t): corresponds to a first set of forecast values.

At step 312, the one or more future activities of the user are predictedbased on the first set of forecast values and the second set of forecastvalues. In an embodiment, the predictive unit 210 may be configured topredict the one or more future activities of the user. For example, theone or more future activities may include one or more of, but are notlimited to, a frequency of visit of a user to a social media platformduring a second predefined time duration, a count of messages to beposted, shared, or followed by the user during the second predefinedtime duration, and a like or a dislike of the user towards a product ora service during the second predefined time duration. In an embodiment,the one or more future activities of the user may be predicted based onan aggregation of the first set of forecast values and the second set offorecast values. In one embodiment, the aggregation may correspond to anaverage of the first set of forecast values and the second set offorecast values. In another embodiment, the aggregation may correspondto a weighted average of the first set of forecast values and the secondset of forecast values. The predictive unit 210 may include anoperational model (not shown) to perform the aggregation of the firstset of forecast values and the second set of forecast values. Theaggregation of the first set of forecast values and the second set offorecast values provides a final set of prediction values. Thepredictive unit 210 utilizes the final set of prediction values topredict the future activities of the user during the second predefinedtime duration. For example, a final set of prediction valuescorresponding to a count of messages that will be posted by a user on asocial medial platform (FACEBOOK) in December-2015 (i.e. duringChristmas and New year) is obtained on week basis as [35, 25, 50, 120,150]. This implies that the user may post “35” messages in first week ofDecember, “25” messages in second week of December, “50” messages inthird week of December, “120” messages in second week of December, and“150” messages in second week of December.

After determining the one or more future activities that may beperformed by the user during the second predefined time duration, therequestor may utilize the requestor-computing device 102 to recommendthe one or more products or services to the user on various platformssuch as social medial platforms. The recommendations of the one or moreproducts or services may be based on the predicted one or more futureactivities of the user during the second predefined time duration.

FIG. 4 is a flow diagram 400 that illustrates a prediction of the one ormore future activities of a user, in accordance with at least oneembodiment. The flow diagram 400 is described in conjunction with FIG.1, FIG. 2 and FIG. 3.

The first time series (denoted by 402) is extracted from the socialmedia platform server 106. The first time series may be representativeof the one or more historical activities performed by the user per timeperiod during the first predefined time duration. The per time periodmay be defined based on an hourly basis, a daily basis, a weekly basis,a monthly basis, a yearly basis, and/or the like. In an embodiment, themean and the variance of the count of the one or more historicalactivities may be constant during the first predefined time duration. Inan embodiment, based on the one or more inputs provided by the user, theprocessor 202 may extract the first time series from the social mediaplatform server 106. Further, the processor 202 may receive the secondtime series (denoted by 404) from the requestor-computing device 102.The second time series may be representative of the one or more futureevents during the second predefined time duration. The one or morefuture events may comprise one or more periodic events and/or one ormore non-periodic events. The one or more periodic events may compriseone or more of a festival, a sport event, an exam session, and/or thelike. The one or more non-periodic events may comprise one or more of amusical event, an election campaign, a natural catastrophe, and/or thelike.

In an embodiment, the predictive unit 210 utilizes an ARIMA model basedon the ARIMA technique (denoted by 406) to obtain the first set offorecast values (denoted by 410). The predictive unit 210 furtherutilizes a regression model, based on the regression modelling technique(denoted by 408), to obtain the second set of forecast values (denotedby 412). The predictive unit 210 may further include an operation model.The operation model may be configured to perform operations, such as oneor more mathematical operations, one or more logical operations, and/orone or more statistical operations on the first set of forecast valuesand the second set of forecast values to obtain a final set ofprediction values. In one embodiment, the operation model may beconfigured to perform an aggregation (denoted by 414) of the first setof forecast values and the second set of forecast values to obtain thefinal set of prediction values (denoted by 416). The aggregation maycorrespond to the average or the weighted average of the first set offorecast values and the second set of forecast values.

After determining the one or more future activities of the user, therequestor may utilize the requestor-computing device 102 to connect withthe user-computing device 104 over the network 112. Further, therequestor may transmit one or more recommendations for the one or moreproducts or services (denoted by 418) associated with the one or moreexternal events and/or the one or more future activities of the user.After receiving the one or more recommendations, the user may utilizethe user-computing device 104 to take one or more actions (e.g., view,select, accept, reject, feedback, and/or the like) pertaining to the oneor more recommendations.

The disclosed embodiments encompass numerous advantages. The disclosureprovides a method and a system to predict one or more future activitiesof a user in a second predefined time duration (i.e., a future timeduration). The disclosed methods and systems utilizes social media data(i.e., one or more historical activities performed by the user during afirst predefined time duration) along with one or more future eventsassociated with a second predefined time duration to predict one or morefuture activities of the one or more users. The prediction of the one ormore future activities of the user may lead to an effective andpersonalized marketing and promotion of one or more products andservices.

The disclosed methods and systems, as illustrated in the ongoingdescription or any of its components, may be embodied in the form of acomputer system. Typical examples of a computer system include ageneral-purpose computer, a programmed microprocessor, amicro-controller, a peripheral integrated circuit element, and otherdevices, or arrangements of devices that are capable of implementing thesteps that constitute the method of the disclosure.

The computer system comprises a computer, an input device, a displayunit, and the internet. The computer further comprises a microprocessor.The microprocessor is connected to a communication bus. The computeralso includes a memory. The memory may be RAM or ROM. The computersystem further comprises a storage device, which may be a HDD or aremovable storage drive such as a floppy-disk drive, an optical-diskdrive, and the like. The storage device may also be a means for loadingcomputer programs or other instructions onto the computer system. Thecomputer system also includes a communication unit. The communicationunit allows the computer to connect to other databases and the internetthrough an input/output (I/O) interface, allowing the transfer as wellas reception of data from other sources. The communication unit mayinclude a modem, an Ethernet card, or other similar devices that enablethe computer system to connect to databases and networks, such as, LAN,MAN, WAN, and the internet. The computer system facilitates input from auser through input devices accessible to the system through the I/Ointerface.

To process input data, the computer system executes a set ofinstructions stored in one or more storage elements. The storageelements may also hold data or other information, as desired. Thestorage element may be in the form of an information source or aphysical memory element present in the processing machine.

The programmable or computer-readable instructions may include variouscommands that instruct the processing machine to perform specific tasks,such as steps that constitute the method of the disclosure. The systemsand methods described can also be implemented using only softwareprogramming or only hardware, or using a varying combination of the twotechniques. The disclosure is independent of the programming languageand the operating system used in the computers. The instructions for thedisclosure can be written in all programming languages, including, butnot limited to, ‘C’, ‘C++’, ‘Visual C++’ and ‘Visual Basic’. Further,software may be in the form of a collection of separate programs, aprogram module containing a larger program, or a portion of a programmodule, as discussed in the ongoing description. The software may alsoinclude modular programming in the form of object-oriented programming.The processing of input data by the processing machine may be inresponse to user commands, the results of previous processing, or from arequest made by another processing machine. The disclosure can also beimplemented in various operating systems and platforms, including, butnot limited to, ‘Unix’, DOS′, ‘Android’, ‘Symbian’, and ‘Linux’.

The programmable instructions can be stored and transmitted on acomputer-readable medium. The disclosure can also be embodied in acomputer program product comprising a computer-readable medium, or withany product capable of implementing the above methods and systems, orthe numerous possible variations thereof.

Various embodiments of the methods and systems for predicting futureactivities of a user on a social media platform have been disclosed.However, it should be apparent to those skilled in the art thatmodifications in addition to those described are possible withoutdeparting from the inventive concepts herein. The embodiments,therefore, are not restrictive, except in the spirit of the disclosure.Moreover, in interpreting the disclosure, all terms should be understoodin the broadest possible manner consistent with the context. Inparticular, the terms “comprises” and “comprising” should be interpretedas referring to elements, components, or steps, in a non-exclusivemanner, indicating that the referenced elements, components, or stepsmay be present, or used, or combined with other elements, components, orsteps that are not expressly referenced.

A person with ordinary skills in the art will appreciate that thesystems, modules, and sub-modules have been illustrated and explained toserve as examples and should not be considered limiting in any manner.It will be further appreciated that the variants of the above disclosedsystem elements, modules, and other features and functions, oralternatives thereof, may be combined to create other different systemsor applications.

Those skilled in the art will appreciate that any of the aforementionedsteps and/or system modules may be suitably replaced, reordered, orremoved, and additional steps and/or system modules may be inserted,depending on the needs of a particular application. In addition, thesystems of the aforementioned embodiments may be implemented using awide variety of suitable processes and system modules, and are notlimited to any particular computer hardware, software, middleware,firmware, microcode, and the like.

The claims can encompass embodiments for hardware and software, or acombination thereof.

It will be appreciated that variants of the above disclosed, and otherfeatures and functions or alternatives thereof, may be combined intomany other different systems or applications. Presently unforeseen orunanticipated alternatives, modifications, variations, or improvementstherein may be subsequently made by those skilled in the art, which arealso intended to be encompassed by the following claims.

What is claimed is:
 1. A method for predicting one or more futureactivities of a user on a social media platform, said method comprising:extracting, by one or more processors, a first time series of one ormore historical activities performed by said user on said social mediaplatform from a social media platform server; receiving, by said one ormore processors, a second time series of one or more future events froma computing device; determining, by said one or more processors, a firstset of forecast values pertaining to said one or more future activitiesbased on said first time series, wherein said first set of forecastvalues is determined using a first forecasting technique; determining,by said one or more processors, a second set of forecast valuespertaining to said one or more future activities based on said firsttime series and said second time series, wherein said second set offorecast values is determined using a second forecasting technique;predicting, by said one or more processors, said one or more futureactivities of said user based on said first set of forecast values andsaid second set of forecast values; and recommending, by said one ormore processors, one or more products/services based on said predictedone or more future activities of said user.
 2. The method of claim 1,wherein said one or more historical activities performed by said usercomprise one or more of one or more messages posted, shared, or followedby said user during a first predefined time duration and one or moreproducts or services liked or disliked by said user during said firstpredefined time duration.
 3. The method of claim 1, wherein said one ormore future events comprise one or more periodic events or one or morenon-periodic events, wherein said one or more periodic events compriseone or more of a festival, a sport event, and an exam session, andwherein said one or more non-periodic events comprise one or more of amusical event, an election campaign, and a natural catastrophes.
 4. Themethod of claim 1, wherein said first time series comprises at least acount of said one or more historical activities performed by said userduring a first predefined time duration.
 5. The method of claim 4,wherein a mean and a variance of said count of said one or morehistorical activities are constant during said first predefined timeduration.
 6. The method of claim 1, wherein said first forecastingtechnique corresponds to an auto regressive integrated moving average(ARIMA) technique, and wherein said second forecasting technique isbased on a regression modelling technique.
 7. The method of claim 1,wherein said one or more future activities may comprise one or more of afrequency of visit of said user to said social media platform during asecond predefined time duration, a count of messages to be posted,shared, or followed by said user during said second predefined timeduration, and a like or a dislike of said user towards a product or aservice during said second predefined time duration.
 8. The method ofclaim 7, wherein said one or more future activities of said user arepredicted, by said one or more processors, based on an aggregation of atleast said first set of forecast values and said second set of forecastvalues.
 9. The method of claim 8, wherein said aggregation correspondsto an average or a weighted average of at least said first set offorecast values and said second set of forecast values.
 10. A system forpredicting one or more future activities of a user on a social mediaplatform, said system comprising: one or more processors configured to:extract a first time series of one or more historical activitiesperformed by said user on said social media platform during a firstpredefined time duration from a social media platform server; receive asecond time series of one or more future events for a second predefinedtime duration from a requestor-computing device; determine a first setof forecast values pertaining to said one or more future activitiesbased on said first time series, wherein said first set of forecastvalues is determined using a first forecasting technique; determine asecond set of forecast values pertaining to said one or more futureactivities based on said first time series and said second time series,wherein said second set of forecast values is determined using a secondforecasting technique; predict said one or more future activities ofsaid user for said second predefined time duration based on said firstset of forecast values and said second set of forecast values; andrecommend one or more products/services based on said predicted one ormore future activities of said user during said second predefined timeduration.
 11. The system of claim 10, wherein said one or morehistorical activities performed by said user comprise one or more of oneor more messages posted, shared, or followed by said user during saidfirst predefined time duration and one or more products or servicesliked or disliked by said user during said first predefined timeduration.
 12. The system of claim 10, wherein said one or more futureevents comprise one or more periodic events or one or more non-periodicevents, wherein said one or more periodic events comprise one or more ofa festival, a sport event, and an exam session, and wherein said one ormore non-periodic events comprise one or more of a musical event, anelection campaign, and a natural catastrophes.
 13. The system of claim10, wherein said first forecasting technique corresponds to an autoregressive integrated moving average (ARIMA) technique, and wherein saidsecond forecasting technique is based on a regression modellingtechnique.
 14. The system of claim 10, wherein said one or more futureactivities may comprise one or more of a frequency of visit of said userto said social media platform during said second predefined timeduration, a count of messages to be posted, shared, or followed by saiduser during said second predefined time duration, and a like or adislike of said user towards a product or a service during said secondpredefined time duration.
 15. The system of claim 14, wherein said oneor more processors are further configured to predict said one or morefuture activities of said user based on an aggregation of at least saidfirst set of forecast values and said second set of forecast values. 16.The system of claim 15, wherein said aggregation corresponds to anaverage or a weighted average of at least said first set of forecastvalues and said second set of forecast values.
 17. A computer programproduct for use with a computer, the computer program product comprisinga non-transitory computer readable medium, wherein the non-transitorycomputer readable medium stores a computer program code for predictingone or more future activities of a user on a social media platform,wherein the computer program code is executable by one or moreprocessors to: extract a first time series of one or more historicalactivities performed by said user on said social media platform during afirst predefined time duration from a social media platform server;receive a second time series of one or more future events for a secondpredefined time duration from a requestor-computing device; determine afirst set of forecast values pertaining to said one or more futureactivities based on said first time series, wherein said first set offorecast values is determined using an auto regressive integrated movingaverage (ARIMA) technique; determine a second set of forecast valuespertaining to said one or more future activities based on said firsttime series and said second time series, wherein said second set offorecast values is determined based on a regression modelling technique;predict said one or more future activities of said user for said secondpredefined time duration based on said first set of forecast values andsaid second set of forecast values; and recommend one or moreproducts/services based on said predicted one or more future activitiesof said user during said second predefined time duration.